<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>function-target</title>
    <meta name="viewport" content="width=device-width, initial-scale=1" />
  </head>
  <body>
    <!-- 1. Define some markup -->
    <button class="btn">Copy Text Promise</button>

    <button class="btnText">Copy target Promise</button>
    <div>hello</div>

    <!-- 2. Include library -->
    <script src="../dist/clipboard.js"></script>

    <!-- 3. Instantiate clipboard -->
    <script>
      
      var clipboard = new Clipboard('.btnText', {
        target: function (target) {
          const res = new Promise((resolve,reject)=>{
            setTimeout(()=>{
              document.querySelector('div').innerHTML = '异步数据: target <br />'+new Date()
              resolve(document.querySelector('div'))
            },2000)
          }) 
          return res;
        },
      });

      clipboard.on('success', function (e) {
        console.info('Action:', e.action);
        console.info('Text:', e.text);
        console.info('Trigger:', e.trigger);
      });

      clipboard.on('error', function (e) {
        console.info('Action:', e.action);
        console.info('Text:', e.text);
        console.info('Trigger:', e.trigger);
      });

      var clipboard = new Clipboard('.btn', {
        text: function (target) {
          const res = new Promise((r,s)=>{
            setTimeout(()=>{
              document.querySelector('div').innerHTML = '异步数据'+new Date()
              r('异步数据'+new Date())
            },2000)
          }) 
          return res;
        },
      });

      clipboard.on('success', function (e) {
        console.info('Action:', e.action);
        console.info('Text:', e.text);
        console.info('Trigger:', e.trigger);
      });

      clipboard.on('error', function (e) {
        console.info('Action:', e.action);
        console.info('Text:', e.text);
        console.info('Trigger:', e.trigger);
      });
    </script>
  </body>
</html>
